<?php
class Users extends Model{

    //Hàm kiểm tra xem người dùng có tồn tại trong hệ thống hay không
    //Nếu có : trả về true
    //Nếu không: trả về false
    public function user_exists($username){
        $username = sanitize($username);
        $where = "`username` = '$username'";
        $order = "";
        $data = "`uid`";
        $this->select(LT2N_PREFIX.'_users', $where, $order, $data);
        if($this->numrow($this->getDt()) == 1 ){
            return true;
        } else {
            return false;
        }

    }

    //Hàm kiểm tra xem email người dùng có tồn tạo hay chưa
    //Nếu có trả về true, ngược lại trả về false
    public function email_exists($email){
        $email = sanitize($email);
        $where = "`email` = '$email'";
        $order = "";
        $data = "`uid`";
        $this->select(LT2N_PREFIX.'_users', $where, $order, $data);
        if($this->numrow($this->getDt()) == 1 ){
            return true;
        } else {
            return false;
        }
    }


    //Hàm lấy uid từ tài khoản của người dùng
    public function user_id_from_username($username){
        $username = sanitize($username);
        $where = "`username` = '$username'";
        $order = "";
        $data = "`uid`";
        $user_id = $this->select(LT2N_PREFIX.'_users', $where, $order, $data);

        if(!empty($user_id)){
            return $user_id[0]['uid'];
        }
    }

    //Hàm lấy uid từ tài khoản của người dùng
    public function user_permission_from_username($username){
        $username = sanitize($username);
        $where = "`username` = '$username'";
        $order = "";
        $data = "`permission`";
        $user_permission = $this->select(LT2N_PREFIX.'_users', $where, $order, $data);

        if(!empty($user_permission)){
            return $user_permission[0]['permission'];
        }
    }


    //Người dùng đăng nhập
    public function user_login($username, $password){
        //$user_id = $this->user_id_from_username($username);
        $username = sanitize($username);
        $password = md5($password);

        $where = array(
            '`username`'=>$username,
            '`password`'=>$password
        );
        $order = "";
        $data = "`uid`";
        $user_id = $this->select(LT2N_PREFIX.'_users', $where, $order, $data);
        if($this->numrow($this->getDt()) == 1 ){
            return $user_id[0]['uid'];
        } else {
            return false;
        }

    }


    public function admin_login($username, $password){
        $username = sanitize($username);
        $password = md5($password);

        $where = array(
            '`username`'=>$username,
            '`password`'=>$password,
            '`permission`' => PERMISSION_ADMIN
        );
        $order = "";
        $data = "`uid`";
        $user_id = $this->select(LT2N_PREFIX.'_users', $where, $order, $data);
        if($this->numrow($this->getDt()) == 1 ){
            return $user_id[0]['uid'];
        } else {
            return false;
        }
    }


    public function user_logout(){
        unset($_SESSION['user_id']);
        header("Location: index.php");
    }




}
?>